


2025-12-01 13:25:53 +0000: Memory Usage (1206676K) : Starting deriving base layers.
2025-12-01 13:28:27 +0000: Memory Usage (2314588K) : Construct connectivity for the design.
2025-12-01 13:28:28 +0000: Memory Usage (2314588K) : Connectivity rules enabled, Netlist object will be generated.
Chip' - Stage 68 - Design Rule Check (KLayout) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━ 67/77 11:58:20

find openlane/<block>/runs/<timestamp>
you should see a lot of files generated at each step. If you look in the directory for klayout-drc (not sure of the name), there should be a real time log showing how much time was spent on each rule. Depending on the output buffering, you may be able to tell which rule is currently being checked.

deep vs flat drc? All the configuration variables (including defaults) are in the openlane/<block>/runs/<timestamp>/resolved.json file.

deep vs flat drc? All the configuration variables (including defaults) are in the openlane/<block>/runs/<timestamp>/resolved.json file. 



deep vs flat drc? All the configuration variables (including defaults) are in the openlane/<block>/runs/<timestamp>/resolved.json file. 
2025-12-01 13:24:36
Last enty 2025-12-01 13:25:41

2025-12-01 13:24:36
Last enty 2025-12-01 13:25:41 2025-12-02 01:40














gf180mcu/gf180mcuD/libs.tech/librelane and open config.tcl.
Set conn_drc to false: dict set ::env(KLAYOUT_DRC_OPTIONS) conn_drc false





conn_drc as well. But then you might get false positive DRC errors.
[15:53:43] VERBOSE Running 'Checker.KLayoutDRC' at 'librelane/runs/RUN_2025-12-02_01-03-17/65-checker-klayoutdrc'… step.py:1138
[15:53:43] ERROR 16 KLayout DRC errors found. - deferred checker.py:124
urgh

NW.2b_MV violations?





+ key until all the cell frames disappear)





2025-12-05 15:21:23 +0000: Memory Usage (3550244K) : Executing rule ANT.16_i_ANT.5

Circuit 1 contains 137698 devices, Circuit 2 contains 140300 devices. *** MISMATCH ***
Circuit 1 contains 133045 nets, Circuit 2 contains 138947 nets. *** MISMATCH ***autoname on?

autoname on? lvs.report that precedes the mismatch counts above, I might be able to suggest something else.

lvs.netgen.rpt has more information.

lvs_config.json file. Looks like the standard cell spice may not be loaded.
Do you know what command is being used to run LVS?

lvs_config.json file. Looks like the standard cell spice may not be loaded.
Do you know what command is being used to run LVS? 


gf180mcu_fd_sc_mcu9t5v0__oai21_1 (12908) |gf180mcu_fd_sc_mcu9t5v0__oai21_1 (13137) *
gf180mcu_fd_sc_mcu9t5v0__mux2_1 (10908) |gf180mcu_fd_sc_mcu9t5v0__mux2_1 (10942) **
The layout is the abstract extracted spice runs/eco/29-magic-spiceextraction/chip_top.spice, but unfortunately, I can't find what verilog netlist is being used.
I'll create a PR that records that file in the log file.

gf180mcu_fd_sc_mcu9t5v0__oai21_1 (12908) |gf180mcu_fd_sc_mcu9t5v0__oai21_1 (13137) *
gf180mcu_fd_sc_mcu9t5v0__mux2_1 (10908) |gf180mcu_fd_sc_mcu9t5v0__mux2_1 (10942) **
The layout is the abstract extracted spice runs/eco/29-magic-spiceextraction/chip_top.spice, but unfortunately, I can't find what verilog netlist is being used.
I'll create a PR that records that file in the log file. 


Circuit 1 contains 137698 devices, Circuit 2 contains 140300 devices. *** MISMATCH ***
Circuit 1 contains 133045 nets, Circuit 2 contains 138947 nets. *** MISMATCH *** Circuit 1 contains 140296 devices, Circuit 2 contains 140296 devices.
Circuit 1 contains 138946 nets, Circuit 2 contains 138946 nets.
Final result:
Circuits match uniquely.
the issue is indeed Magic; this is using 8.3.578 which includes the 512-character maximum name length fix (edited)
